Provably correct peephole optimizations with alive
نویسندگان
چکیده
منابع مشابه
Alive-FP: Automated Verification of Floating Point Based Peephole Optimizations in LLVM
Peephole optimizations optimize and canonicalize code to enable other optimizations but are error-prone. Our prior research on Alive, a domain-specific language for specifying LLVM’s peephole optimizations, automatically verifies the correctness of integer-based peephole optimizations and generates C++ code for use within LLVM. This paper proposes Alive-FP, an automated verification framework f...
متن کاملPrecondition Inference for Peephole Optimizations in LLVM
Peephole optimizations are a common source of compiler bugs. Compiler developers typically transform an incorrect peephole optimization into a valid one by strengthening the precondition. This process is challenging and tedious. This paper proposes ALIVE-INFER, a data-driven approach that infers preconditions for peephole optimizations expressed in Alive. ALIVE-INFER generates positive and nega...
متن کاملLightweight Formal Methods for Compiler Verification
Compilers should not miscompile. Our work addresses problems in developing peephole optimizations that perform local rewriting to improve the efficiency of LLVM code. These optimizations are individually difficult to get right, particularly in the presence of undefined behavior; taken together they represent a persistent source of bugs. ”Provably Correct Peephole Optimizations with Alive” prese...
متن کاملProvably Correct Architecture Refinement
This paper presents a formal approach to correctly generate an architecture level model of a system from its specification model. We define the notion of equivalence of models based on their execution semantics. A formalism is then presented, which can be used to model systems and perform correct transformations on them. Architecture refinement is described, as a sequence of such transformation...
متن کاملProvably Correct Runtime Monitoring
Runtime monitoring is an established technique to enforce a wide range of programsafety and security properties. We present a formalization of monitoring and monitorinlining, for the Java Virtual Machine. Monitors are security automata given in aspecial-purpose monitor specification language, ConSpec. The automata operateon finite or infinite strings of calls to a fixed API, all...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
ژورنال
عنوان ژورنال: ACM SIGPLAN Notices
سال: 2015
ISSN: 0362-1340,1558-1160
DOI: 10.1145/2813885.2737965